14.5 Настройка MPLS QoS
14.5.1 Обзор
Введение в функцию
MPLS QoS — важная часть сети с гарантией качества обслуживания (QoS), обычно реализуемая с использованием модели DiffServ. MPLS использует метки, которые заменяют маршруты, что делает систему мощной, гибкой и способной удовлетворять различные требования.
Описание принципа
MPLS QoS основывается на использовании различных моделей LSP (Label Switched Path) для управления приоритетом пакетов на основе меток. Для реализации различных QoS политик в сети MPLS можно использовать три модели LSP: Uniform, Pipe и Short Pipe.
14.5.2 Модели MPLS LSP
Uniform model - Пакеты в IP и MPLS сети имеют одинаковый приоритет, что означает, что приоритет действует глобально. На входном устройстве пакеты получают метки, и значение EXP будет отображено на основе DSCP. На выходном устройстве DSCP пакетов будет отображено на основе EXP.

Рисунок 14-5: Uniform model
Pipe model - На входном устройстве пакеты получают метки, и EXP назначается пользователем. На выходном устройстве PHB (Per-Hop Behavior) отображается из EXP, а выходные пакеты сохраняют оригинальный DSCP.

Рисунок 14-6: Pipe model
Short Pipe model - На входном устройстве пакеты получают метки, и EXP назначается пользователем. На выходном устройстве PHB отображается из DSCP, а выходные пакеты сохраняют оригинальный DSCP.

Рисунок 14-7: Short pipe model
14.5.3 Конфигурация MPLS QoS

Рисунок 14-8: MPLS QoS LSP model
Настройка MPLS QoS для модели Uniform
Следующий пример покажет, как настроить MPLS QoS для модели Uniform.
Следующую конфигурацию нужно выполнить на всех коммутаторах, если не указан ID коммутатора.
Шаг 1: Вход в режим конфигурации
Switch# configure terminal
Шаг 2: Установить модель MPLS LSP
Switch(config)# mpls lsp-model uniform
Шаг 3: Вход в режим конфигурации интерфейса и настройка атрибутов интерфейса
Настройка интерфейса для PE1:
Switch(config)# interface eth-0-9
Switch(config-if)# no switchport
Switch(config-if)# ip address 10.0.9.1/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Switch(config)# interface eth-0-1
Switch(config-if)# no switchport
Switch(config-if)# qos domain type dscp 1
Switch(config-if)# trust dscp
Switch(config-if)# replace dscp
Switch(config-if)# ip address 1.1.1.1/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Настройка интерфейса для P:
Switch(config)# interface eth-0-9
Switch(config-if)# no switchport
Switch(config-if)# ip address 10.0.9.2/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Switch(config)# interface eth-0-17
Switch(config-if)# no switchport
Switch(config-if)# ip address 10.0.17.2/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Настройка интерфейса для PE2:
Switch(config)# interface eth-0-17
Switch(config-if)# no switchport
Switch(config-if)# ip address 10.0.17.1/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Switch(config)# interface eth-0-1
Switch(config-if)# no switchport
Switch(config-if)# qos domain type dscp 1
Switch(config-if)# trust dscp
Switch(config-if)# replace dscp
Switch(config-if)# ip address 2.2.2.2/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Шаг 4: Настройка статической ARP
Настройка ARP для PE1:
Switch(config)# arp 1.1.1.2 0001.0001.0002
Настройка ARP для PE2:
Switch(config)# arp 2.2.2.1 0002.0002.0001
Шаг 5: Настройка статической FTN/ILM
Настройка FTN для PE1:
Switch(config)# mpls ftn-entry 2.2.2.0/24 102 10.0.9.2
Switch(config)# mpls ilm-entry pop 201
Настройка ILM для P:
Switch(config)# mpls ilm-entry swap 102 10.0.17.1 203
Switch(config)# mpls ilm-entry swap 302 10.0.9.1 201
Настройка ILM для PE2:
Switch(config)# mpls ftn-entry 1.1.1.0/24 302 10.0.17.2
Switch(config)# mpls ilm-entry pop 203
Шаг 6: Проверка
Просмотр результатов на PE1:
PE1# show mpls ftn-database
Codes: > - selected FTN, p - stale FTN, B - BGP FTN, K - CLI FTN,
L - LDP FTN, R - RSVP-TE FTN, S - SNMP FTN, I - IGP-Shortcut,
* -bypass FTN, U - unknown FTN
Code FEC Out-Label Nexthop Out-Intf
K> 2.2.2.0/24 102 10.0.9.2 eth-0-9
PE1# show mpls ilm-database
Codes: > - selected ILM, * - LSP ILM, p - stale ILM, B - BGP ILM, K - CLI ILM,
L - LDP ILM, R - RSVP-TE ILM, S - SNMP ILM, I - IGP-Shortcut
U - unknown ILM
Code FEC I/O Label Nexthop Out-Intf
K> 0.0.0.0/0 201/- 0.0.0.0 N/A
Просмотр результатов на P:
P# show mpls ilm-database
Codes: > - selected ILM, * - LSP ILM, p - stale ILM, B - BGP ILM, K - CLI ILM,
L - LDP ILM, R - RSVP-TE ILM, S - SNMP ILM, I - IGP-Shortcut
U - unknown ILM
Code FEC I/O Label Nexthop Out-Intf
K> 0.0.0.0/0 102/203 10.0.17.1 eth-0-17
K> 0.0.0.0/0 302/201 10.0.9.1 eth-0-9
Просмотр результатов на PE2:
PE2# show mpls ftn-database
Codes: > - selected FTN, p - stale FTN, B - BGP FTN, K - CLI FTN,
L - LDP FTN, R - RSVP-TE FTN, S - SNMP FTN, I - IGP-Shortcut,
* -bypass FTN, U - unknown FTN
Code FEC Out-Label Nexthop Out-Intf
K> 1.1.1.0/24 302 10.0.17.2 eth-0-17
PE2# show mpls ilm-database
Codes: > - selected ILM, * - LSP ILM, p - stale ILM, B - BGP ILM, K - CLI ILM,
L - LDP ILM, R - RSVP-TE ILM, S - SNMP ILM, I - IGP-Shortcut
U - unknown ILM
Code FEC I/O Label Nexthop Out-Intf
K> 0.0.0.0/0 203/- 0.0.0.0 N/A
Настройка MPLS QoS Pipe
Настройка должна быть выполнена на всех коммутаторах, если не указано иное для ID коммутатора.
Шаг 1: Вход в режим конфигурации
Switch# configure terminal
Шаг 2: Настройка модели MPLS LSP
Настройка интерфейса для PE1:
Switch(config)# mpls lsp-model pipe exp 7
Настройка интерфейса для P:
Switch(config)# mpls lsp-model pipe
Настройка интерфейса для PE2:
Switch(config)# mpls lsp-model pipe exp 7
Шаг 3: Вход в режим конфигурации интерфейса и настройка атрибутов интерфейса
Настройка интерфейса для PE1:
Switch(config)# interface eth-0-9
Switch(config-if)# no switchport
Switch(config-if)# ip address 10.0.9.1/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Switch(config)# interface eth-0-1
Switch(config-if)# no switchport
Switch(config-if)# qos domain type dscp 1
Switch(config-if)# trust dscp
Switch(config-if)# ip address 1.1.1.1/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Настройка интерфейса для P:
Switch(config)# interface eth-0-9
Switch(config-if)# no switchport
Switch(config-if)# ip address 10.0.9.2/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Switch(config)# interface eth-0-17
Switch(config-if)# no switchport
Switch(config-if)# ip address 10.0.17.2/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Настройка интерфейса для PE2:
Switch(config)# interface eth-0-17
Switch(config-if)# no switchport
Switch(config-if)# ip address 10.0.17.1/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Switch(config)# interface eth-0-1
Switch(config-if)# no switchport
Switch(config-if)# qos domain type dscp 1
Switch(config-if)# trust dscp
Switch(config-if)# ip address 2.2.2.2/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Шаг 4: Настройка статической ARP
Настройка интерфейса для PE1:
Switch(config)# arp 1.1.1.2 0001.0001.0002
Настройка интерфейса для PE2:
Switch(config)# arp 2.2.2.1 0002.0002.0001
Шаг 5: Настройка статической ftn/ilm
Статический ftn для PE1:
Switch(config)# mpls ftn-entry 2.2.2.0/24 102 10.0.9.2
Switch(config)# mpls ilm-entry pop 201
Статический ilm для P:
Switch(config)# mpls ilm-entry swap 102 10.0.17.1 203
Switch(config)# mpls ilm-entry swap 302 10.0.9.1 201
Статический ilm для PE2:
Switch(config)# mpls ftn-entry 1.1.1.0/24 302 10.0.17.2
Switch(config)# mpls ilm-entry pop 203
Шаг 6: Проверка
Отображение результата на PE1:
PE1# show mpls ftn-database
Codes: > - selected FTN, p - stale FTN, B - BGP FTN, K - CLI FTN,
L - LDP FTN, R - RSVP-TE FTN, S - SNMP FTN, I - IGP-Shortcut,
* -bypass FTN, U - unknown FTN
Code FEC Out-Label Nexthop Out-Intf
K> 2.2.2.0/24 102 10.0.9.2 eth-0-9
PE1# show mpls ilm-database
Codes: > - selected ILM, * - LSP ILM, p - stale ILM, B - BGP ILM, K - CLI ILM,
L - LDP ILM, R - RSVP-TE ILM, S - SNMP ILM, I - IGP-Shortcut
U - unknown ILM
Code FEC I/O Label Nexthop Out-Intf
K> 0.0.0.0/0 201/- 0.0.0.0 N/A
Отображение результата на P:
P# show mpls ilm-database
Codes: > - selected ILM, * - LSP ILM, p - stale ILM, B - BGP ILM, K - CLI ILM,
L - LDP ILM, R - RSVP-TE ILM, S - SNMP ILM, I - IGP-Shortcut
U - unknown ILM
Code FEC I/O Label Nexthop Out-Intf
K> 0.0.0.0/0 102/203 10.0.17.1 eth-0-17
K> 0.0.0.0/0 302/201 10.0.9.1 eth-0-9
Отображение результата на PE2:
PE2# show mpls ftn-database
Codes: > - selected FTN, p - stale FTN, B - BGP FTN, K - CLI FTN,
L - LDP FTN, R - RSVP-TE FTN, S - SNMP FTN, I - IGP-Shortcut,
* -bypass FTN, U - unknown FTN
Code FEC Out-Label Nexthop Out-Intf
K> 1.1.1.0/24 302 10.0.17.2 eth-0-17
PE2# show mpls ilm-database
Codes: > - selected ILM, * - LSP ILM, p - stale ILM, B - BGP ILM, K - CLI ILM,
L - LDP ILM, R - RSVP-TE ILM, S - SNMP ILM, I - IGP-Shortcut
U - unknown ILM
Code FEC I/O Label Nexthop Out-Intf
K> 0.0.0.0/0 203/- 0.0.0.0 N/A
Настройка MPLS QoS Short Pipe
Настройка должна быть выполнена на всех коммутаторах, если не указано иное для ID коммутатора.
Шаг 1: Вход в режим конфигурации
Switch# configure terminal
Шаг 2: Настройка модели MPLS LSP
Настройка интерфейса для PE1:
Switch(config)# mpls lsp-model short-pipe exp 7
Настройка интерфейса для P:
Switch(config)# mpls lsp-model short-pipe
Настройка интерфейса для PE2:
Switch(config)# mpls lsp-model short-pipe exp 7
Шаг 3: Вход в режим конфигурации интерфейса и настройка атрибутов интерфейса
Настройка интерфейса для PE1:
Switch(config)# interface eth-0-9
Switch(config-if)# no switchport
Switch(config-if)# ip address 10.0.9.1/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Switch(config)# interface eth-0-1
Switch(config-if)# no switchport
Switch(config-if)# qos domain type dscp 1
Switch(config-if)# trust dscp
Switch(config-if)# ip address 1.1.1.1/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Настройка интерфейса для P:
Switch(config)# interface eth-0-9
Switch(config-if)# no switchport
Switch(config-if)# ip address 10.0.9.2/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Switch(config)# interface eth-0-17
Switch(config-if)# no switchport
Switch(config-if)# ip address 10.0.17.2/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Настройка интерфейса для PE2:
Switch(config)# interface eth-0-17
Switch(config-if)# no switchport
Switch(config-if)# ip address 10.0.17.1/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Switch(config)# interface eth-0-1
Switch(config-if)# no switchport
Switch(config-if)# qos domain type dscp 1
Switch(config-if)# trust dscp
Switch(config-if)# ip address 2.2.2.2/24
Switch(config-if)# label-switching
Switch(config-if)# exit
Шаг 4: Настройка статической ARP
Настройка интерфейса для PE1:
Switch(config)# arp 1.1.1.2 0001.0001.0002
Настройка интерфейса для PE2:
Switch(config)# arp 2.2.2.1 0002.0002.0001
Шаг 5: Настройка статической ftn/ilm
Статический ftn для PE1:
Switch(config)# mpls ftn-entry 2.2.2.0/24 102 10.0.9.2
Switch(config)# mpls ilm-entry pop 201
Статический ilm для P:
Switch(config)# mpls ilm-entry swap 102 10.0.17.1 203
Switch(config)# mpls ilm-entry swap 302 10.0.9.1 201
Статический ilm для PE2:
Switch(config)# mpls ftn-entry 1.1.1.0/24 302 10.0.17.2
Switch(config)# mpls ilm-entry pop 203
Шаг 6: Проверка
Отображение результата на PE1:
PE1# show mpls ftn-database
Codes: > - selected FTN, p - stale FTN, B - BGP FTN, K - CLI FTN,
L - LDP FTN, R - RSVP-TE FTN, S - SNMP FTN, I - IGP-Shortcut,
* -bypass FTN, U - unknown FTN
Code FEC Out-Label Nexthop Out-Intf
K> 2.2.2.0/24 102 10.0.9.2 eth-0-9
PE1# show mpls ilm-database
Codes: > - selected ILM, * - LSP ILM, p - stale ILM, B - BGP ILM, K - CLI ILM,
L - LDP ILM, R - RSVP-TE ILM, S - SNMP ILM, I - IGP-Shortcut
U - unknown ILM
Code FEC I/O Label Nexthop Out-Intf
K> 0.0.0.0/0 201/- 0.0.0.0 N/A
Отображение результата на P:
P# show mpls ilm-database
Codes: > - selected ILM, * - LSP ILM, p - stale ILM, B - BGP ILM, K - CLI ILM,
L - LDP ILM, R - RSVP-TE ILM, S - SNMP ILM, I - IGP-Shortcut
U - unknown ILM
Code FEC I/O Label Nexthop Out-Intf
K> 0.0.0.0/0 102/203 10.0.17.1 eth-0-17
K> 0.0.0.0/0 302/201 10.0.9.1 eth-0-9
Отображение результата на PE2:
PE2# show mpls ftn-database
Codes: > - selected FTN, p - stale FTN, B - BGP FTN, K - CLI FTN,
L - LDP FTN, R - RSVP-TE FTN, S - SNMP FTN, I - IGP-Shortcut,
* -bypass FTN, U - unknown FTN
Code FEC Out-Label Nexthop Out-Intf
K> 1.1.1.0/24 302 10.0.17.2 eth-0-17
PE2# show mpls ilm-database
Codes: > - selected ILM, * - LSP ILM, p - stale ILM, B - BGP ILM, K - CLI ILM,
L - LDP ILM, R - RSVP-TE ILM, S - SNMP ILM, I - IGP-Shortcut
U - unknown ILM
Code FEC I/O Label Nexthop Out-Intf
K> 0.0.0.0/0 203/- 0.0.0.0 N/A